/**
*  
* @Function 共享定制服务 
* @ProjectName credit-data-platform 
* @PackageName com.py.credit.service    
* @FileName ShareCustomizeService.java    
* @Date 2018年9月11日下午5:41:51
* @Author Min DongXv
* @Copyright (c) 2018, 金电联行 All Rights Reserved.   
*   
*/
package com.py.credit.service;

import java.util.List;
import java.util.Map;

import com.py.credit.entity.DeptShareResourceEntity;
import com.py.credit.entity.ShareCustomizeEntity;
import com.py.framework.core.common.Page;

/**
 * 
 * @Function 共享定制服务
 * @ClassName ShareCustomizeService
 * @Date 2018年9月11日 下午5:41:51
 * @Author Min DongXv
 * 
 */
public interface ShareCustomizeService {

	/**
	 *
	 * @Function 分页查询共享定制信息
	 * @FileName ShareCustomizeService.java
	 * @MethodName shareCustomizeListByConditionForPage
	 * @param columns
	 * @param additionalColumns
	 * @param condition
	 * @param page
	 * @return
	 * @Date 2018年9月11日 下午5:44:02
	 * @Author Min DongXv
	 *
	 */
	public List<Map<String, Object>> shareCustomizeListByConditionForPage(List<String> columns,
			String[] additionalColumns, String condition, Page page);

	/**
	 *
	 * @Function 新增共享定制
	 * @FileName ShareCustomizeService.java
	 * @MethodName addShareCustomize
	 * @param deptId
	 *            部门ID
	 * @param shareDate
	 *            共享期限
	 * @param managerId
	 *            操作人ID
	 * @param customizeStatus
	 * @Date 2018年9月11日 下午5:44:02
	 * @Author Min DongXv
	 *
	 */
	public void addShareCustomize(Long deptId, String shareDate, Long managerId, String customizeStatus);

	/**
	 *
	 * @Function 更新共享定制
	 * @FileName ShareCustomizeService.java
	 * @MethodName updateShareCustomize
	 * @param shareDate
	 *            共享期限
	 * @param managerId
	 *            操作人ID
	 * @param customizeStatus
	 *            定制状态
	 * @Date 2018年9月11日 下午5:44:02
	 * @Author Min DongXv
	 *
	 */
	public void updateShareCustomize(Long id, String shareDate, Long managerId, String customizeStatus,
			List<DeptShareResourceEntity> resources, Long deptId);

	/**
	 *
	 * @Function 共享定制是否存在
	 * @FileName ShareCustomizeService.java
	 * @MethodName getShareCustomizeByDeptId
	 * @param deptId
	 *            部门ID
	 * @return
	 * @Date 2018年9月11日 下午5:44:02
	 * @Author Min DongXv
	 *
	 */
	public ShareCustomizeEntity getShareCustomizeByDeptId(Long deptId);

	/**
	 *
	 * @Function 获取定制详情
	 * @FileName ShareCustomizeServiceImpl.java
	 * @MethodName shareCustomizeDetail
	 * @param deptId
	 * @return
	 * @Date 2018年9月11日 下午8:13:05
	 * @Author Min DongXv
	 *
	 */
	public ShareCustomizeEntity shareCustomizeDetail(Long deptId);
}
